In Japan, there is provided a service whereby a mobile device, comprising a WWW (World Wide Web) browser and a Java (registered trademark) virtual machine, is caused to download from a server connected to the Internet an application program written in Java language, to store the application program, and to execute the application program using the Java virtual machine.
In using this service, if operations during running of a Java application can be changed in response to a push message received from a server connected to the Internet, a range of the service provided can be expanded. However, to expand the range of the service it is necessary to be able to notify to a running Java application receipt of a message that is destined for the running Java application. Among techniques of notifying to an application that a communication terminal has received a message from a server are those described in JP2002-132693, JP2002-344529, and JP2003-134566.
In the technique described in JP2002-132693, a chat server, when receiving background image data during a chat session, notifies receipt of the background image data to a client machine running a Java applet during a chat session. On receipt of the notification, the Java applet downloads the background image data from the chat server and displays it. However, this service can be realized only after a communication connection has been established between the chat server and the client machine. In contrast, in services other than those based on a communication connection such as a chat service, it is not practical to establish a communication connection between a mobile device and a server each time the server sends a message. Also, a Java applet is executed by using a WWW browser, not by using a Java virtual machine. In view of such issues, using the technique described in JP2002-132693 for expanding a range of service is problematic.
In the technique described in JP2002-344529, a push server sends to a user terminal a message including identification information of an application to be executed and an execution option for the application. On receipt of the message, the user terminal, if loaded with software required for the execution of the application, executes the application using the execution option included in the message. However, this technique is not used for changing operations of a running application, but rather for executing a pre-execution application. Also, in using the above-mentioned service, a Java application running in a mobile device is recognized not by an OS (Operating System) but by a Java virtual machine. An OS is only able to recognize a Java virtual machine that is running. In contrast, the technique described in JP2002-344529 is based on a precondition that an application is able to be recognized by an OS. As is clear from the preconditions outlined above, it will be appreciated that using this technique for expanding a range of the above-mentioned service is problematic.
In the technique described in JP2003-134566, a call server, upon request of a WWW server, calls a mobile terminal using a technique called “Wake On Ring” and sends data to the mobile terminal. The mobile terminal, when called by the call server, identifies an application for using the data on the basis of information included in the call. The identified application connects to the WWW server and requests delivery of the data. However, since this technique is also based on a precondition that an application is able to be recognized by an OS, using this technique for expanding the range of the above-mentioned service is problematic, for the same reason as discussed in relation to the technique described in JP2002-344529.
The present invention has been made in view of the circumstances stated above, and provides a technique of receiving, in a communication terminal where running applications are not managed by an OS, a message from a device without establishing a communication connection with the device, and if the received message is destined for a running application, notifying receipt of the message to the running application.